package com.axun.yyt.familybedapp;

/**
 * @author kzcai
 * @packageName com.axun.yyt.familybedapp
 * @date 2025/1/11
 */
public class CrashHandler implements Thread.UncaughtExceptionHandler {

    private static CrashHandler instance;

    private CrashHandler() {}

    public static CrashHandler getInstance() {
        if (instance == null) {
            instance = new CrashHandler();
        }
        return instance;
    }

    public void init() {
        Thread.setDefaultUncaughtExceptionHandler(this);
    }

    @Override
    public void uncaughtException(Thread t, Throwable e) {
        // 在这里处理崩溃信息，例如记录到文件或发送到服务器
        // 简单起见，这里仅打印堆栈跟踪
        e.printStackTrace();

        // 如果需要，可以重启应用程序或结束当前进程
        // 重启应用程序的一种可能方式是通过Intent重新启动Launcher Activity
    }
}
